﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using VisionApp.Entity;

namespace VisionApp.Camera
{
    public interface ICamera
    {
        /// <summary>
        /// 相机信息列表
        /// </summary>
        List<string> DeviceIDList { get; set; }
        /// <summary>
        /// 图像数据容器
        /// </summary>
        HImageContainer ImCtnr { get; set; }
        /// <summary>
        /// 当前使用相机设备ID
        /// </summary>
        CameraInfo CurrentCameraInfo { get; set; }
        /// <summary>
        /// 相机连接状态
        /// </summary>
        bool Connected { get; set; }
        /// <summary>
        /// 相机初始化
        /// </summary>
        /// <returns></returns>
        int Init();
        /// <summary>
        /// 采集图像
        /// </summary>
        /// <returns></returns>
        int GrabImg();
        /// <summary>
        /// 停止录像
        /// </summary>
        /// <returns></returns>
        int StopRecord();
        /// <summary>
        /// 注销相机
        /// </summary>
        /// <returns></returns>
        int Exit();
    }
}
